
export interface ResponseData{
    code:number,
    message:string,
    ok:boolean
}
export interface SubmitOrderResponseData extends ResponseData{
    data:number
}

export interface OrderInfo {
    "id": number,
    "createTime": string,
    "updateTime": string,
    "isDeleted": number,
    "param": {
        "orderStatusString": string
    },
    "userId": number,
    "outTradeNo": string,
    "hoscode": string,
    "hosname": string,
    "depcode": string,
    "depname": string,
    "scheduleId": string,
    "title": string,
    "reserveDate":string,
    "reserveTime": number,
    "patientId": number,
    "patientName": string,
    "patientPhone": string,
    "hosRecordId": string,
    "number": number,
    "fetchTime": string,
    "fetchAddress": string,
    "amount": number,
    "quitTime": string,
    "orderStatus": number
}
export interface OrderInfoResponseData extends ResponseData{
    data:OrderInfo
}

export interface PayInfo{
    "codeUrl": string,
    "orderId": number,
    "totalFee": number,
    "resultCode": string
}
export  interface QrCode extends ResponseData{
    data:PayInfo
}
export interface PayStatus extends ResponseData{
   data:boolean
}

export interface UserInfo{
    "id": number,
    "createTime": string,
    "updateTime": string,
    "isDeleted": number,
    "param": {

},
    "openid": string,
    "nickName": string,
    "phone": string,
    "name": string,
    "certificatesType": string,
    "certificatesNo": string,
    "certificatesUrl": string,
    "authStatus": number,
    "status": number
}


export interface UserInfoResponseData extends ResponseData{
    data:UserInfo;
}

export interface CertificationType{
    "id": number,
    "createTime": string,
    "updateTime": string,
    "isDeleted": number,
    "param": {},
    "parentId": number,
    "name": string,
    "value": string,
    "dictCode": string,
    "hasChildren": boolean
}

export type CertificationArr = CertificationType[]

export interface CertificationTypeResponseData extends ResponseData{
    data:CertificationArr
}

export interface UserParams{
    "certificatesNo": string,
    "certificatesType": string,
    "certificatesUrl": string,
    "name": string
}

export type Records = OrderInfo[];

export interface UserOrderInfoResponseData extends ResponseData{
    data:{
        records:Records,
        total:number,
        size:number,
        current:number,
        orders:[],
        hitCount:boolean,
        searchCount:boolean,
        page:number
    }
}

export interface OrderState{
    "comment":string,
    "status":number
}

export type AllOrderState = OrderState[];

export interface AllOrderStateResponseData extends ResponseData{
    data:AllOrderState
}

export interface AddOrUpdateUser {
    address:string,
    addressSelected: [],
    birthdate:string,
    certificatesNo:string,
    certificatesType:string,
    cityCode:string,
    contactsCertificatesNo:string,
    contactsCertificatesType:string,
    contactsName:string,
    contactsPhone:string,
    districtCode:string,
    isDeleted:number,
    isInsure:number,
    isMarry:number,
    name:string,
    phone:string,
    provinceCode:string,
    sex:number,
    id:number
}
